// request.js
import axios from 'axios';

// 创建 axios 实例
const service = axios.create({
    baseURL: 'http://localhost:8099', // 设置后端的基础地址
    timeout: 5000, // 请求超时时间
});

// 请求拦截器（可选）
service.interceptors.request.use(
    config => {
        // 在发送请求之前做些什么，比如添加 Token
        // 获取 token
        const token = localStorage.getItem('token');
        if (token) {
            // 如果有 token，则加入到请求头
            config.headers.Authorization = `Bearer ${token}`;
        }
        return config;
    },
    error => {
        // 对请求错误做些什么
        return Promise.reject(error);
    }
);

// 响应拦截器（可选）
service.interceptors.response.use(
    response => {
        if(response.data.code===303){
            // 如果code为303，说明需要重新登录
            // 这里假设你已经正确导入并配置了Vue Router
            window.location.href = '/login'; // 或者使用Vue Router的this.$router.push('/login')，如果是组件内部
            return Promise.reject('需要重新登录');
        }
        // 对响应数据做点什么
        return response.data;
    },
    error => {
        // 对响应错误做点什么
        return Promise.reject(error);
    }
);

export default service;
